package com.gdcn.zb.sys.service.impl;

import java.util.List;

import com.gdcn.zb.base.BaseService;
import com.gdcn.zb.base.exception.DaoException;
import com.gdcn.zb.base.exception.ServiceException;
import com.gdcn.zb.sys.dao.ISekcioDao;
import com.gdcn.zb.sys.service.ISekcioService;
import com.gdcn.zb.sys.valueobject.Sekcio;

public class SekcioServiceImpl extends BaseService implements ISekcioService {
	private ISekcioDao sekcioDao ;
	
	public void setSekcioDao(ISekcioDao sekcioDao) {
		this.sekcioDao = sekcioDao;
	}

	public void createSekcio(Sekcio sekcio) throws ServiceException {
		try{
			sekcioDao.createSekcio(sekcio);
		}catch (DaoException e) {
			logger.error(e);
			throw new ServiceException(e);
		}
	}

	public void deleteSekcio(int id) throws ServiceException {
		try{
			sekcioDao.deleteSekcio(id);
		}catch (DaoException e) {
			logger.error(e);
			throw new ServiceException(e);
		}
	}

	public Sekcio findSekcioById(int id) throws ServiceException {
		Sekcio sekcio = null;
		try{
			sekcio = sekcioDao.findSekcioById(id);
		}catch (DaoException e) {
			logger.error(e);
			throw new ServiceException(e);
		}
		return sekcio;
	}

	public void updateSekcio(Sekcio sekcio)throws ServiceException {
		try{
			sekcioDao.updateSekcio(sekcio);
		}catch (DaoException e) {
			logger.error(e);
			throw new ServiceException(e);
		}
	}

	public List<Sekcio> listSekcioOfAll() {
		List<Sekcio> list = null;
		try{
			String hql = "from Sekcio s";
			list = sekcioDao.listSekcio(hql);
		}catch (DaoException e) {
			logger.error(e);
			throw new ServiceException(e);
		}
		return list;
	}

	public void deleteSekcio(String[] id) throws ServiceException {
		if(id != null){
			for(int i=0;i<id.length;i++){
				deleteSekcio(Integer.parseInt(id[i]));
			}
		}
		
	}

}
